package com.javaPro.myProject.modules.user.service;

import com.javaPro.myProject.modules.user.mapper.UserMapper;
import com.javaPro.myProject.modules.user.model.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;


@Service
public class UserServiceImpl implements UserService {
    @Autowired
    UserMapper userMapper;

    @Override
    public User getUser(User user) {
        return userMapper.getUserByAcc(user);
    }



    /**
     * 查询【用户】
     *
     * @return 【用户】
     */
    @Override
    public User selectUserById(User User)
    {
        return userMapper.selectUserById(User);
    }

    /**
     * 查询【用户】列表
     *
     * @param User 【用户】
     * @return 【用户】
     */
    @Override
    public List<User> selectUserList(User User)
    {
        return userMapper.selectUserList(User);
    }

    /**
     * 新增【用户】
     *
     * @param User 【用户】
     * @return 结果
     */
    @Override
    public int insertUser(User User)
    {
        return userMapper.insertUser(User);
    }

    @Override
    public int insertUserAcc(User User) {
        return userMapper.insertUserAcc(User);
    }

    /**
     * 修改【用户】
     *
     * @param User 【用户】
     * @return 结果
     */
    @Override
    public int updateUser(User User)
    {
//        if (User.getUserId() != null && !"".equals(User.getUserId())){
//           User userParam = new User();
//            userParam.setUserId(User.getUserId());
//            List<User> users = userMapper.selectUserList(userParam);
//            if (users.size() > 0){//说明已经被绑定了
//                return 500;
//            }else {
//                User userParam2 = new User();
//                userParam2.setCheckUserId(User.getUserId());
//                 users = userMapper.selectUserList(userParam2);
//                 if (users .size() <= 0){
//                     return 300;
//                 }
//            }
//        }
        return userMapper.updateUser(User);
    }

    @Override
    public int updateUserAcc(User User) {
        return userMapper.updateUserAcc(User);
    }

    /**
     * 删除【用户】信息
     *
     * @param id 【用户】主键
     * @return 结果
     */
    @Override
    public int deleteUserById(Long id)
    {
        return userMapper.deleteUserById(id);
    }


}
